package com.ideaaedi.springcloud.jd.commonds.entity.user.vo.resp;

import com.ideaaedi.springcloud.jd.commonds.enums.user.CertTypeEnum;
import com.ideaaedi.springcloud.jd.commonds.enums.user.UserTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * <p>
 * 系统-用户表 detail resp
 * </p>
 *
 * @author <font size = "20" color = "#3CAA3C"><a href="https://gitee.com/JustryDeng">JustryDeng</a></font> <img src="https://gitee.com/JustryDeng/shared-files/raw/master/JustryDeng/avatar.jpg" />
 * @since 2021.0.5.B
 */
@Data
@ApiModel(description = "系统-用户表 detail resp")
public class SysUserDetailRespVO {

    /**
     * id
     */
    @ApiModelProperty("id")
    private Long id;
    
    /**
     * 租户编码
     */
    @ApiModelProperty("租户编码")
    private String tenant;
    
    /**
     * 所属业务租户的名称
     */
    @ApiModelProperty("所属业务租户的名称")
    private String tenantName;
    
    /**
     * 用户类型
     */
    @ApiModelProperty("用户类型")
    private UserTypeEnum type;

    /**
     * 用户账号
     */
    @ApiModelProperty("用户账号")
    private String accountNo;

    /**
     * 用户姓名
     */
    @ApiModelProperty("用户姓名")
    private String name;
    
    /**
     * 用户生日
     */
    @ApiModelProperty("用户生日")
    private String birthday;

    /**
     * 用户性别（1-男；2-女; 0-未知）
     */
    @ApiModelProperty("用户性别（1-男；2-女; 0-未知）")
    private Integer gender;

    /**
     * 头像(附件id)
     */
    @ApiModelProperty("头像(附件id)")
    private Long avatarId;
    
    /**
     * 头像url
     */
    @ApiModelProperty("头像url")
    private String avatarUrl;
    
    /**
     * 用户手机号
     */
    @ApiModelProperty("用户手机号")
    private String phone;
    
    /**
     * 用户邮箱
     */
    @ApiModelProperty("用户邮箱")
    private String email;
    
    /**
     * 用户证件类型
     */
    @ApiModelProperty("用户证件类型")
    private CertTypeEnum certType;
    
    /**
     * 用户证件号
     */
    @ApiModelProperty("用户证件号")
    private String certNo;
    
    /**
     * 账号状态(1-正常；2-禁用)
     */
    @ApiModelProperty("账号状态(1-正常；2-禁用)")
    private Integer state;
    
    /**
     * 用户拥有的角色
     */
    @ApiModelProperty("用户拥有的角色")
    private List<Long> roleIds;
    
    /**
     * 用户部门及职位信息
     */
    @ApiModelProperty("用户部门及职位信息")
    private List<UserDeptPostInfoRespVO> deptPostList;
    
}